// 引入 Decimal.js 库
import { Decimal } from 'decimal.js';

// js 乘法
export function jsChengfa(arg1, arg2) {
  var m = 0;
  var s1 = arg1.toString();
  var s2 = arg2.toString();
  try {
    m += s1.split('.')[1].length;
  } catch (e) {
    // console.log(e);
  }
  try {
    m += s2.split('.')[1].length;
  } catch (e) {
    // console.log(e);
  }
  return (
    (Number(s1.replace('.', '')) * Number(s2.replace('.', ''))) /
    Math.pow(10, m)
  );
}

// 严谨的加法函数
export function accAdd(num1, num2, precision) {
  // 将 num1 和 num2 转换为 Decimal 对象
  const augend = new Decimal(num1);
  const addend = new Decimal(num2);

  // 如果未指定精度，则将精度设置为 10
  if (precision === undefined) {
    precision = 2;
  }

  // 将精度设置为整数
  precision = parseInt(precision);

  // 执行加法运算并返回结果
  return augend.plus(addend).toDecimalPlaces(precision).toString();
}
